package com.springbootnetty.jt808;

import com.springbootnetty.utils.Jt808Util;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 以下是对整个消息头抽象出来的一个java实体类
 *
 * */
@AllArgsConstructor
@NoArgsConstructor
@Data
public class BaseHead{

    /**
     * 2byte 唯一id 0100注册--8100注册应答--0102鉴权--8001通用应答---0002心跳----8001通用应答--0200位置数据--8001通用应答
     */
    public   int msgId;


    /**
     * 2byte  消息体属性
     */
    public    int msgProperty;


    /**
     * 6byte  终端手机号
     */
    public   String msgPhone;

    /**
     *  2byte  消息流水号
     */
    public   int msgFlow;


    /**
     * 解析消息头
     * 下标 1-12
     * */
    public BaseHead(byte[] data){
        this.msgId = Jt808Util.byte2ToInt(new byte[]{data[1],data[2]});
        this.msgProperty = Jt808Util.byte2ToInt(new byte[]{data[3],data[4]});
        this.msgPhone = Jt808Util.byte6ToString(new byte[]{data[5],data[6],data[7],data[8],data[9],data[10]});
        this.msgFlow = Jt808Util.byte2ToInt(new byte[]{data[11],data[12]});
    }
}

